#ifndef __dbus_client_h__
#define __dbus_client_h__

#include <pidgin-dbus.h>

class DBusClient 
: public inkboard::pidgin::dbus_proxy
, public DBus::IntrospectableProxy
, public DBus::ObjectProxy
{
	public:
	virtual void recvTalk(const std::string& app, const int32_t& tid);
	virtual void registeredTalk(const std::string& app, const int32_t& tid);
	virtual void recvMessage(const int32_t& tid, const std::string& text);

	public:          
	static DBusClient* getInstance();
	~DBusClient(); 

	protected:
	DBusClient( ::DBus::Connection& connection );
	static DBusClient* _instance;

};

void setTalkIdByToAndFrom( const int tid, const std::string to, const std::string from );
int getTalkIdByToAndFrom( const std::string to, const std::string from );


#endif //__dbus_client_h__
